Updating data storage on serial devices of a data storage system, two examples of which are disk storage and RAID (Redundant Array of Independent Disks) systems, typically results in a phenomenon known as fragmentation to occur. For example, when a file, such as a data set, is first created, the computer-implemented system will cause the file to be allocated to a contiguous area, such as a series of tracks or cylinders on the disk or RAID system, if it is possible to get the contiguous area. However, when the user adds data or updates data of a first file, some additional space at another physical location on the disk is allocated for the addition or update, and the outdated portion of the file may be deleted, resulting in fragmentation of the data both of the original file due to the deletion and of the added or updated data due to the placement of the data.
Fragmentation tends to build up over time as more data and files are added, deleted and modified. Hence, defragmentation algorithms have been developed to analyze the fragmented data and move data in such a way as to place portions of data in deleted areas to reorganize the data, making the data both more contiguous and in the proper sequence. A few of the numerous examples of defragmentation algorithms comprise “Real Time Defrag” of Dino Software, “Compaktor” of Computer Associates, and “DFDSS Defrag” of International Business Machines Corp.
Herein, the term “freespace” is used as a term of art to represent storage space whose data has been deleted, or added storage space without data, making the space “free” and available for use to store data.